home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.cs.arizona.edu
/
ftp.cs.arizona.edu.tar
/
ftp.cs.arizona.edu
/
icon
/
newsgrp
/
group01b.txt
/
000093_icon-group-sender_Fri Jul 6 09:40:39 2001.msg
< prev
next >
Wrap
Internet Message Format
|
2002-01-03
|
2KB
Return-Path: <icon-group-sender>
Received: (from root@localhost)
by baskerville.CS.Arizona.EDU (8.11.1/8.11.1) id f66GeYw19372
for icon-group-addresses; Fri, 6 Jul 2001 09:40:34 -0700 (MST)
Message-Id: <200107061640.f66GeYw19372@baskerville.CS.Arizona.EDU>
Date: Fri, 6 Jul 2001 11:00:37 +0100 (BST)
From: Hugh Sasse Staff Elec Eng <hgs@dmu.ac.uk>
X-Sender: hgs@neelix
To: "Richard A. O'Keefe" <ok@atlas.otago.ac.nz>
cc: art.eschenlauer@sufsys.com, icon-group@cs.arizona.edu
Subject: Re: Software testing for Icon?
Errors-To: icon-group-errors@cs.arizona.edu
Status: RO
Content-Length: 1446
On Fri, 6 Jul 2001, Richard A. O'Keefe wrote:
> Hugh Sasse Staff Elec Eng <hgs@dmu.ac.uk> wrote:
> I don't know. With Icon not being OO, I'm not sure if one can apply
> unit testing to it, but it has been done somehow in C, so maybe...
>
> That's a strange comment. Unit testing has *nothing* to do with OO.
Oh. Once again I have "set DISPLAY_IGNORANCE=GLOBAL" :-). I have only
come across unit testing through "eXtreme Programming", and in that case
the "unit" is an object or class.
> People were unit-testing Fortran and COBOL long before OO was born in 1967.
So what was the "unit" in these cases?
>
> OO has been pretty disastrous for testing, because you _can't_ test code
> thoroughly. The next subclass to come along may wreck everything. (Except
> in Eiffel, if you're careful.) It is much much _easier_ to do unit testing
> in Icon than in C++ or Java. (Yes, I'm aware of CppUnit. I have it. It
> still falls foul of the fact that subclassing means that the code you tested
> is not the code your client is running.)
Where can I find more info about this? Inheritance can do subtle things,
and I'd like to be more aware of this than I am. These remarks are
intersting because part of the reason for the popularity of OO is the
encapsulation of objects, which ought to make testing easier because
of isolating errors. If interacting objects are held inside another
object this can be scaled somewhat.
>
Hugh